MWF.xApplication.attendancev2.LP = {
  title: "Attendance Management",

  menu: {
    // 我的
    myAttendance: "My Attendance",
    myStatistic: "My Statistics",
    myAppealList: "My Attendance Abnormalities",
    // 统计考勤
    statistic: "Attendance Statistics",
    detailStatisticFilter: "Summary Statistics",
    detailFilter: "Daily Statistics",
    recordList: "Raw Records",
    appealList: "Abnormal Data",
    // 管理配置
    config: "Configuration",
    shiftManager: "Shift Management",
    groupmanager: "Attendance Group Management",
    addressmanger: "Workplace Management",
    leavemanager: "Out of Office Leave Records",
    configmanager: "Configuration Management"
  },

  alert: "Alert",
  operate: "Operate",
  choose: "Choose",
  save: "Save",
  delete: "Delete",
  update: "Update",
  search: "Search",
  statisticExport: "Export (Recursive)",
  positive: "OK",
  cancel: "Cancel",
  add: "Add",
  more: "More",
  dataError: "Data Error!",
  saveSuccess: "Save Successful!",
  onDuty: "Clock In",
  onDutySimple: "Clock In",
  offDuty: "Clock Out",
  offDutySimple: "Clock Out",
  yes: "Yes",
  no: "No",
  firstPage: "First Page",
  lastPage: "Last Page",
  until: "Until",
  day: {
    Sunday: "Sunday",
    Monday: "Monday",
    Tuesday: "Tuesday",
    Wednesday: "Wednesday",
    Thursday: "Thursday",
    Friday: "Friday",
    Saturday: "Saturday"
  },
  daySimple: {
    Sunday: "Sun",
    Monday: "Mon",
    Tuesday: "Tue",
    Wednesday: "Wed",
    Thursday: "Thu",
    Friday: "Fri",
    Saturday: "Sat",
  },
  month: " ",
  year: " ",
  minute: "m",
  hour: "h",
  classifierDay: "d",
  times: "time",
  // 组件
  components: {
    chooseTimePlaceholder: "Select Time",
    timeMinutesSelectorClosePlaceholder: "Close",
    timeMinutesSelectorHour: "Hour",
    timeMinutesSelectorMinute: "Minute",
    chooseDatePlaceholder: "Select Date",
    selectPlaceholder: "Select",
    selectOrgPersonOverCount: "You can select up to ({count}) data!",
  },
  // 我的
  myAttendanceTitle: "My Statistics",
  myAttendanceCalendar: "Attendance Calendar",
  myAttendanceStatistic: "Attendance Statistics",
  myFieldWork: "Field Work",
  myStatistic: {
    title: "Attendance Cycle:",
    averageWorkTimeDuration: "Average Work Hours (hours)",
    workTimeDuration: "Work Duration (minutes)",
    attendance: "Attendance (days)",
    nosignTimes: "Missed Punches (times)",
    lateTimes: "Late Arrivals (times)",
    leaveEarlierTimes: "Early Departures (times)",
    leaveDays: "Leave (days)",
    absenteeismDays: "Absenteeism (days)",
    fieldWorkTimes: "Field Work (times)"
  },

  // 班次
  shiftTitle: "Shift Management",
  addShift: "Add Shift",
  editShift: "Edit Shift",
  shiftName: "Shift Name",
  checkInTime: "Attendance Time",
  shiftSelector: "Select Shift",
  shiftForm: {
    shiftNameLabel: "Shift Name",
    shiftNameLabelPlaceholder: "Enter Shift Name",
    checkInTimeLabel: "Check-In Time",
    seriousTardinessLateMinutesLabel: "Serious Tardiness (Minutes)",
    absenteeismLateMinutesLabel: "Absenteeism Tardiness (Minutes)",
    seriousTardinessLateMinutesNeedNumber: "Serious Tardiness (Minutes) must be a number!",
    absenteeismLateMinutesNeedNumber: "Absenteeism Tardiness (Minutes) must be a number!",
    firstTimeLabel: "First Shift",
    secondTimeLabel: "Second Shift",
    thirdTimeLabel: "Third Shift",
    oneTimeDayLabel: "1 Time per Day",
    secondTimeDayLabel: "2 Times per Day",
    thirdTimeDayLabel: "3 Times per Day",
    onDutyTimeLabel: "Start Time:",
    beforeOnDutyTimeLabel: "Punch Time Period: ",
    beforeOnDutyTimePlaceholder: "Select Before Start Time",
    afterOnDutyTimePlaceholder: "Select After Start Time",
    afterOnDutyTimeLabel: "After Start",
    offDutyTimeLabel: "End Time:",
    offDutyNextDayLabel: "Ends on the Next Day",
    beforeOffDutyTimeLabel: "Punch Time Period: ",
    beforeOffDutyTimePlaceholder: "Select Before End Time",
    afterOffDutyTimePlaceholder: "Select After End Time",
    afterOffDutyTimeLabel: "After End",
    lateAndEarlyOnTimeLabel1: "Maximum Allowed Late Arrival:",
    lateAndEarlyOnTimeLabel2: " (Not Considered Late)",
    lateAndEarlyOffTimeLabel1: "Maximum Allowed Early Departure:",
    lateAndEarlyOffTimeLabel2: " (Not Considered Early Departure)",
    shiftNameNotEmpty: "Shift Name cannot be empty!",
    onDutyTimeNotEmpty: "Start Time cannot be empty!",
    offDutyTimeNotEmpty: "End Time cannot be empty!",
    success: "Save Successful!",
    confirmDelete: "Are you sure you want to delete this {name} information?",
    selectShiftEmpty: "Please select a shift",
    workTimeLabel: "Shift Work Hours",
    workTimeTotal: "Total Work Duration",
    needWorkTimeLimit: "Is Duration Below Limit Considered Early Departure"
},

  // 工作场所
  workAddressManagerTitle: "Workplace Management",
  workAddressSelector: "Select Workplace",
  workAddressAdd: "Add Workplace",
  workAddressView: "View Workplace",
  workAddressName: "Place Name",
  workAddressRange: "Error Range",
  workAddressDesc: "Remarks",
  workAddressBDkeyConfigBtn: "Set Baidu Developer Authentication",
  workAddressBDkeyConfig: "Baidu Developer Authentication",
  workAddressBDkeyConfigDesc: "Workplace Management uses services from Baidu Map Open Platform. You can register for Baidu Developer Authentication to increase the map's concurrency. After completing the authentication, please enter the key in the input box below.",
  workAddressBDLinkTitle: "Click here to open the authentication channel",
  workAddressBDLink: "https://lbsyun.baidu.com/apiconsole/auth",
  workAddressBDSecretTitle: "Secret Key (AK)",
  workAddressBDSecretTitlePlaceholder: "Enter the secret key (AK) of the Baidu Map application",
  workAddressForm: {
    lnglatNotEmpty: "Please select a workplace on the map first!",
    title: "Place Name",
    titlePlaceholder: "Enter Place Name",
    titleNotEmpty: "Place Name cannot be empty!",
    range: "Punch Range (meters)",
    rangePlaceholder: "Enter Punch Range (meters)",
    rangeNotEmpty: "Punch Range (meters) cannot be empty!",
    desc: "Remarks",
    descPlaceholder: "Enter Remarks",
    rangeNeedNumber: "Punch Range (meters) must be a number!",
    success: "Save Successful!",
    confirmDelete: "Are you sure you want to delete this workplace '{name}'?",
    selectWorkAddressEmpty: "Please select at least one workplace",
    locationCoordinateInfo: "Click on the map to locate the workplace address",
    locationCoordinateLabel: "Positioning coordinates: "
},
  // 考勤组
  groupManagerTitle: "Attendance Group Management",
  groupAdd: "Add Attendance Group",
  groupUpdate: "Edit Attendance Group",
  groupForm: {
    title: "Attendance Group Name",
    titlePlaceholder: "Enter Attendance Group Name",
    titleErrorNotEmpty: "Attendance Group Name cannot be empty!",
    num: "Number of Members",
    status: "Status",
    status_unpublish: "Unpublished",
    status_normal: "Normal",
    checkType: "Attendance Type",
    checkTypeError: "Incorrect Attendance Type!",
    checkTypeFix: "Fixed Shift",
    checkTypeFree: "Flexible Hours",
    checkTypeArrangement: "Scheduled Shifts",
    arrangementSettings: "Scheduling Settings",
    arrangementEditTitle: "Edit Schedule",
    tableThDay: "Workday",
    tableThShift: "Shift",
    time: "Workday Settings",
    timeErrorNotEmpty: "Please select workdays!",
    participates: "Attendance Participants and Organizations",
    participatesPlaceholder: "Click to select attendance participants and organizations",
    participatesErrorNotEmtpy: "Attendance participants and organizations cannot be empty!",
    unParticipates: "No Attendance Required",
    unParticipatesPlaceholder: "Click to select members not requiring attendance",
    assistAdminList: "Assistant Administrators",
    assistAdminListPlaceholder: "Click to select assistant administrators",
    shift: "Shift",
    shiftChange: "Change Shift",
    shiftChangeMultiple: "Batch Change Shift",
    shiftEmpty: "Rest",
    shiftPlaceholder: "(Click to select a shift)",
    shiftErrorNotEmpty: "Workday shifts cannot be empty!",
    workPlace: "Workplace",
    workPlacePlaceholder: "Select Workplace",
    workPlaceErrorNotEmpty: "Workplace cannot be empty!",
    fieldWork: "Field Work Clock-In",
    allowFieldWork: "Allow Field Work Clock-In",
    requiredFieldWorkRemarks: "Required Field Work Remarks",
    fieldWorkMarkError: "Field Work Clock-In as Exception Data",
    requiredCheckInDate: "Required Clock-In Dates",
    requiredCheckInDateThDate: "Date",
    requiredCheckInDateThShift: "Shift",
    requiredCheckInDateThCycle: "Cycle",
    requiredCheckInDatePlaceholder: "Add required clock-in dates",
    noNeedCheckInDate: "No Clock-In Required Dates",
    noNeedCheckInDatePlaceholder: "Add dates where clock-in is not required",
    confirmDelete: "Are you sure you want to delete this '{name}' attendance group?"
},
  scheduleForm: {
    title: "Scheduling",
    shift: "Shift for Scheduling",
    cycle: "Scheduling Cycle",
    restShift: "Rest",
    clear: "Clear",
    cycleBtnLabel: "Schedule According to the Scheduling Cycle",
    section: "Section",
    day: "Day",
    monthInfo: "Switching months will automatically save data for the current month!",
    copyFromLastMonthBtn: "Copy last month's data",
    copyConfirmInfo: "Are you sure you want to copy the data of {month} to the current one?",
},
  dateCycle: {
    none: "None",
    week: "Weekly",
    twoWeek: "Bi-Weekly",
    month: "Monthly"
},
  // 考勤信息
  detailManagerTitle: "Attendance statistics",
  detailTable: {
    filterSelectTitle: "People to Query",
    filterEmptyPlaceholder: "Please select people to query!",
    person: "Name",
    groupName: "Attendance Group",
    shiftName: "Shift",
    date: "Date",
    attendance: "Days Present",
    rest: "Days Off",
    leave: "Days on Leave",
    absenteeismDays: "Absenteeism Days",
    workTimeDuration: "Work Duration",
    averageWorkTimeDuration: "Average Work Hours",
    lateTimes: "Late Arrivals",
    lateTimeDuration: "Late Arrival Duration (minutes)",
    leaveEarlierTimes: "Early Departures",
    leaveEarlierTimeDuration: "Early Departure Duration (minutes)",
    onDutyAbsenceTimes: "Missed Clock-Ins",
    offDutyAbsenceTimes: "Missed Clock-Outs",
    absenceTimes: "Missed Clocks",
    fieldWorkTimes: "Field Work Occurrences",
    btnRecordList: "Clock-In Records"
},
  detailExportExcelFileSuccess: "The data has been counted and completed. Click OK to download the Excel file!",
  detailExportConfirmMsg: "The export operation is quite time-consuming, please wait for a while!",
  detailStatisticList: {
    filterEmptyPlaceholder: "Please select people or organizations to query!",
    filterSelectTitle: "People or Organizations for Query",
    participatesPlaceholder: "Click to select attendance participants and organizations",
    participatesErrorNotEmtpy: "Attendance participants and organizations cannot be empty!",
    startDateEmptyPlaceholder: "Select start date!",
    endDateEmptyPlaceholder: "Select end date!"
},
  detailRecordList: {
    title: "Clock-In Records",
    dutyTitle: "Clock-In Type",
    time: "Clock-In Time",
    result: "Clock-In Result",
    address: "Clock-In Address",
    signDesc: "Field Work Description"
},

  // 配置信息
  configManagerTitle: "Attendance Configuration",
  config: {
    holidays: "Holidays",
    holidayLabels: "Set holidays by adding dates that are originally workdays as holidays",
    workdays: "Workdays",
    workdayLabels: "Set workdays by adding dates that are originally non-workdays as workdays",
    appealConfig: "Clock-In Correction Request Configuration",
    appealEnableLabel: "Enable Clock-In Correction Requests",
    appealProcessTypeInnerLabel: "Built-in Fixed Process",
    appealProcessTypeProcessLabel: "Custom Process",
    appealProcessTypeProcessPlaceholder: "Select a custom process",
    appealMaxTimesLabel: "Maximum Monthly Appeal Times per User",
    appealMaxTimesError: "Please enter a valid appeal times number!",
    fastCheckIn: "Quick Clock-In",
    onDutyFastCheckInEnable: "Enable Quick Clock-In for Start of Shift (Effective on the app)",
    offDutyFastCheckInEnable: "Enable Quick Clock-In for End of Shift (Effective on the app)",
    checkInAlert: "Clock-In Reminders",
    checkInAlertEnable: "Enable Clock-In Reminders (Receive reminders 10 minutes before start and end of shift to avoid forgetting to clock in)",
    exceptionAlertEnable: "Enable Exception Clock-In Reminders",
    exceptionAlertEnableTime1: " (You will receive exception clock-in messages the next day at ",
    exceptionAlertEnableTime2: ")",
    detailStatisticCron: "Statistical Timer",
    closeOldAttendance: "Old attendance",
    closeOldAttendanceLabel: "Do you want to disable the old version of attendance clock in function (to prevent app endpoint errors)",
},
  // 请假外出记录
  leaveManagerTitle: "Record of out and leave",
  leave: {
    personName: "Person's Name",
    leaveType: "Type",
    startTime: "Start Time",
    endTime: "End Time",
    leaveDays: "Number of Days",
    desc: "Description",
    excelTemplate: "Download Excel Template",
    importExcel: "Import Excel",
    importExcelFileError: "Only Excel files can be imported!",
    importExcelFileSuccess: "Import completed. Click OK to download and view the import results!",
    deleteConfirm: "Are you sure you want to delete this record?"
},

  // 申诉
  appealManagerTitle: "Abnormal attendance data",
  appeal: {
    date: "Date",
    dutyType: "Clock-In Type",
    recordTime: "Clock-In Time",
    recordResult: "Clock-In Result",
    status: "Status",

    normal: "Normal",
    absenteeism: "Absenteeism Tardiness",
    early: "Early Departure",
    late: "Late Arrival",
    seriousLate: "Serious Late Arrival",
    notSigned: "Missed Clock-In",
    appeal: "Appeal Successful",
    fieldWork: "Field Work Clock-In",
    leave: "Leave",

    status0: "Pending",
    status1: "In Progress",
    status2: "Approved",
    status3: "Not Approved",
    status4: "Processed",

    startProcess: "Initiate Appeal",
    openJob: "View Appeal",
    startProcessNoConfigError: "No appeal process configured. Unable to start a process!",
    notfoundJobError: "No corresponding process data found. Would you like to revert the current data status?",
    dealAppeal: "Process",
    confirmDealAppeal: "Are you sure you want to set this record as normal?"
},

  // 原始打卡记录
  recordManagerTitle: "Original records",
  record: {
    detailTitle: "Record Details",
    name: "Name",
    group: "Attendance Group",
    shift: "Shift",
    dutyTime: "Attendance Time",
    checkInType: "Attendance Type",
    recordDate: "Clock-In Time",
    sourceType: "Data Source",
    checkInResult: "Clock-In Result",
    fieldWork: "Field Work Clock-In",
    fieldWorkDesc: "Field Work Description",
    fieldWorkAddress: "Clock-In Address",
    sourceTypeUser: "User Clock-In",
    sourceTypeAuto: "System Generated",
    sourceTypeFast: "Quick Clock-In",
    sourceTypeImport: "Data Import",
    importExcelFileSuccess: "Import completed. {number} records with errors. Click OK to download and view the import results!",
    searchDateError: "Start and end dates must both be empty or both have values!"
},

  /// mobile

  mobile: {
    menu: {
      checkIn: "Clock-In",
      statistic: "Statistics",
      settings: "Settings"
    },
    unCheckIn: "Not Clocked-In",
    refreshLocation: "[Refresh Location]",
    locationIng: "Locating...",
    locationError: "Location failed. Please enable location permissions!",
    checkInWithTime: "Clocked in at {time}",
    updateCheckInBtn: "Update Clock-In",
    outsideTitle: "Field Work Clock-In",
    outsideNotAllow: "Field Work Clock-In not allowed!",
    outsideRemarkPlaceholder: "Enter Field Work Clock-In Remarks!",
    statisticMonthLabel: "Month",
  },
};
